import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
# 设置颜色
colors = ['#ff9999','#66b3ff','#99ff99','#ffcc99','#c2c2f0']

# 假设这是学生一天的饮食数据
# 食物类别和对应的摄入量（单位：克）
food_intake = {
    '谷、薯类': 275,
    '蔬菜、菌藻、水果类': 350,
    '畜、禽、鱼、蛋类及制品': 215,
    '奶、干豆、坚果、种子类及制品': 60,
    '植物油类': 59
}

# 创建饼图
fig, ax = plt.subplots(figsize=(10, 8), dpi=400)  # 增加图表大小

# 绘制饼图并设置阴影效果
wedges, texts, autotexts = ax.pie(food_intake.values(), labels=food_intake.keys(), autopct='%1.1f%%', startangle=90, colors=colors,
                                   wedgeprops=dict(width=0.4, edgecolor='w'), textprops={'fontsize': 12})

# 调整标签位置
for label in texts:
    label.set_horizontalalignment('center')

# 添加标题
plt.title('1名男大学生的1日食谱', fontsize=14, fontweight='bold')

# 设置图例
plt.legend(food_intake.keys(), loc="upper right", fontsize=10, bbox_to_anchor=(1.08, 0.27))

# 显示图表并保存
plt.show()
